package org.dandsoft.blackbox.snn;

import org.dandsoft.blackbox.util.list.Entry;
import org.dandsoft.blackbox.OutputSignal;
import org.dandsoft.blackbox.ObjectId;
import org.dandsoft.blackbox.Value;

import java.util.Iterator;

/**
 * User: dvilyuzhanin
 * Date: 20.01.2009 14:28:19
 */
public interface Enviroment {

    public void addToUsedSynapsesList(Entry<Synapse> entry) throws SnnException;

    public void addToUsedNeuronsList(Entry<Neuron> entry) throws SnnException;

    //public NeuronStructure getNeuronStructure();

    //public OutputSignal getOutputSignal();

    public Iterator<Synapse> getSynapsesBySource(ObjectId id) throws SnnException;

    public Neuron getNeuron(ObjectId destination) throws SnnException;

    public void output(ObjectId remoteId, Value value) throws SnnException;
}
